//解决js加减乘除丢失精度
//乘法 
function accMul(arg1, arg2) {
	var m = 0,
		s1 = arg1.toString(),
		s2 = arg2.toString();
	try {
		m += s1.split(".")[1].length
	} catch (e) {}
	try {
		m += s2.split(".")[1].length
	} catch (e) {}
	return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m)
}
//加法 
function accAdd(num1, num2) {
	var r1, r2, m;
	try {
		r1 = num1.toString().split(".")[1].length
	} catch (e) {
		r1 = 0
	}
	try {
		r2 = num2.toString().split(".")[1].length
	} catch (e) {
		r2 = 0
	}
	m = Math.pow(10, Math.max(r1, r2))
	return (num1 * m + num2 * m) / m
}

//减法 
function Subtr(num1, num2) {
	var r1, r2, m, n;
	try {
		r1 = num1.toString().split(".")[1].length
	} catch (e) {
		r1 = 0
	}
	try {
		r2 = num2.toString().split(".")[1].length
	} catch (e) {
		r2 = 0
	}
	m = Math.pow(10, Math.max(r1, r2));
	n = (r1 >= r2) ? r1 : r2;
	return ((num1 * m - num2 * m) / m).toFixed(n);
}


export {
	accMul,
	accAdd,
	Subtr
}